In today's world, business process applications form a major part of business operations. These applications can be programs that an end-user runs to accomplish certain tasks. The applications also work in conjunction with one or more back-end systems, which can store the data (for example, business objects and other business data) and logic for manipulating the data (for example transactions or other business logic). In order to accomplish various tasks, the applications can access various data, which can be stored in tables having a plurality of columns, where the tables are stored in various databases.
Access to data can be accomplished through issuance of searches and/or queries. Queries can be issued by user(s) and/or business process application(s) and can be designed to retrieve data that may be requested for various reasons, such as, analysis, operations, etc. Queries can be written using a variety of computing languages and/or environments. One example of such a computing language is a Structured Query Language (“SQL”). SQL includes a data definition language and a data manipulation language. SQL can further include data insert, query, update and delete, schema creation and modification, and data access control features.
SQL queries implement a declarative SELECT statement, which retrieves data from one or more stored tables, or expressions. SQL queries allow the user to describe the desired data, in response to which, a database management system (“DBMS”) performs planning, optimizing, and performing the physical operations necessary to produce a resulting dataset.
In response to some queries, a previously generated or pre-computed dataset can be provided. Such pre-computed dataset can be referred to as a pre-computed result set (“PRS”) or a materialized view. A PRS is a view for which the result is computed, stored, and available for future use. A server can be configured to use pre-computed result sets and, as a result, can pre-compute queries and use the pre-computed result during subsequent iterations. PRS allows performing of many of the same operations that are performed on tables on pre-computed result sets, including creating indexes and running update statistics.
However, business process applications generate vast amounts of data during operation, thereby adding, deleting, and/or updating data that may be stored and available for queries. As such, pre-computed result sets that have not been updated with the most recent data generated by such business process applications might not provide accurate responses to queries, may hamper operation of the business process applications, and may potentially increase operational costs. Thus, to provide the most up-to-date data in response to queries, the pre-computed result sets should be maintained and updated.